package conf

import "gitee.com/linxing_3/sr-core/config/source"

// 子域配置
type AssetsConfig struct {
	Scanner AssetsScanCfg `json:"scanner" yaml:"scanner"`
	Oss     OssConfig     `json:"oss" yaml:"oss"`
}

type OssConfig struct {
	DataPath  string `json:"dataPath" yaml:"dataPath"`   // 数据存储路径
	Thumbnail string `json:"thumbnail" yaml:"thumbnail"` // 缩略图路径
}

type AssetsScanCfg struct {
	FFMpeg  string `json:"ffmpeg" yaml:"ffmpeg"`   // ffmpeg路径
	FFprobe string `json:"ffprobe" yaml:"ffprobe"` // ffprobe路径

	ImgThumbDir string `json:"imgThumbDir" yaml:"imgThumbDir"` // 图片缩略图目录
	// VideoThumbDir string `json:"videoThumbDir" yaml:"videoThumbDir"` // 视频缩略图目录
	VideoClipDir string `json:"videoClipDir" yaml:"videoClipDir"` // 视频片段目录

	ImgThumb   bool `json:"imgThumb" yaml:"imgThumb"`     // 是否生成图片缩略图
	VideoThumb bool `json:"videoThumb" yaml:"videoThumb"` // 是否生成视频缩略图
	VideoClip  bool `json:"videoClip" yaml:"videoClip"`   // 是否生成视频片段
}

var Conf = &struct {
	AssetsAppCfg AssetsConfig `json:"assetsAppCfg" yaml:"assetsAppCfg"`
}{}

func SetupConfig(src source.ISource) {
	src.Scan(Conf)
}
